package com.hoshiicloud.purchase.param;

import com.hoshiicloud.common.query.PageParam;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;

import java.math.BigDecimal;

/**
 * <p>
 * 查询参数
 * </p>
 *
 * @author campchen
 * @since 2019-05-15
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "查询", description = "查询")
public class PodetailQueryParam extends PageParam {

    @ApiModelProperty(name = "poId", value = "采购单ID", dataType = "java.lang.Long", example = "")
    private Long poId;

    @ApiModelProperty(name = "spuName", value = "商品名称", dataType = "java.lang.String", example = "")
    private String spuName;

    @ApiModelProperty(name = "skuName", value = "规格", dataType = "java.lang.String", example = "")
    private String skuName;

    @ApiModelProperty(name = "spuNo", value = "sp uno", dataType = "java.lang.String", example = "")
    private String spuNo;

    @ApiModelProperty(name = "spuId", value = "spu id", dataType = "java.lang.Long", example = "")
    private Long spuId;

    @ApiModelProperty(name = "skuNo", value = "SKU NO", dataType = "java.lang.String", example = "")
    private String skuNo;

    @ApiModelProperty(name = "skuId", value = "SKU ID", dataType = "java.lang.BigDecimal", example = "")
    private BigDecimal skuId;

    @ApiModelProperty(name = "rate", value = "税率", dataType = "java.lang.BigDecimal", example = "")
    private BigDecimal rate;

    @ApiModelProperty(name = "ratefee", value = "税额  =税率*金额", dataType = "java.lang.BigDecimal", example = "")
    private BigDecimal ratefee;

    @ApiModelProperty(name = "amount", value = "合计金额 = 金额+ 税额", dataType = "java.lang.BigDecimal", example = "")
    private BigDecimal amount;

    @ApiModelProperty(name = "totalAmount", value = "合计金额 = 金额+ 税额", dataType = "java.lang.BigDecimal", example = "")
    private BigDecimal totalAmount;

    @ApiModelProperty(name = "unit", value = "商品单位", dataType = "java.lang.String", example = "")
    private String unit;

    @ApiModelProperty(name = "sku", value = "规格", dataType = "java.lang.String", example = "")
    private String sku;

    @ApiModelProperty(name = "unitPrice", value = "单价", dataType = "java.lang.BigDecimal", example = "")
    private BigDecimal unitPrice;

    @ApiModelProperty(name = "quantity", value = "数量", dataType = "java.lang.Long", example = "")
    private Long quantity;

    @ApiModelProperty(name = "status", value = "状态 0-初始 1-已出库 2-已作废", dataType = "java.lang.Integer", example = "")
    private Integer status;

    @ApiModelProperty(name = "shippongCost", value = "运费", dataType = "java.lang.BigDecimal", example = "")
    private BigDecimal shippongCost;

    @ApiModelProperty(name = "otherCost", value = "其他费用", dataType = "java.lang.BigDecimal", example = "")
    private BigDecimal otherCost;

}
